Network devices send and receive data to and from other devices over the network. Third parties often have an interest in intercepting and using data transmitted over a network. For example, third parties may wish to gather information about users' behavior or interests to better target advertising, to obtain sensitive user data such as credit card numbers or the like, etc. One method for gathering network data is deep packet inspection (DPI). DPI examines the information within network packets to determine what content a person is accessing or requesting on the network. It may then be possible to provide targeted advertising from an advertisement data store to the person. For various reasons, e.g., privacy concerns, network users may not wish to share information that may be obtained by DPI. However, existing security protocols and mechanisms to block DPI are presently lacking.
For example, one present network security mechanism, Hypertext Transfer Protocol over Secure Socket Layer (HTTPS) has a number of deficiencies. HTTPS is computationally expensive. Use of HTTPS therefore often causes undesirably high latency when users and content providers exchange data. HTTPS is computationally expensive at least because it uses a Secure Socket Layer (SSL) to manage encryption of data sent between two parties between whom a connection has been established. SSL provides for the secure exchange of data by encrypting data to be exchanged using a secret key. Thus, devices that are to exchange data must negotiate the exchange of secret keys according to a predetermined protocol. The negotiation, or setup, required to establish an SSL connection is part of the reason that HTTPS is computationally expensive. Another reason that HTTPS is computationally expensive is that it encrypts all data exchanged between parties while an HTTPS connection is established. Thus, HTTPS requires encryption and decryption computations to be performed even for data that is not unduly sensitive. Moreover, in HTTPS, secret keys are not retained across sessions, but instead are renegotiated each time a new HTTPS connection is established. In sum, HTTPS generally incurs undesirably high computational costs, latencies, etc.